<?php 

class ocorrencia_pertenceModel extends Model{
    public $tabela = "ocorrencia_pertence";
    public $pkey   = array('cod_grupo','cod_usuario');
    public $dados  = array(
         
         'cod_grupo' => array(
	    'name'     => 'cod_grupo',
	    'type'     => 'int',
	    'size'     => '11',
	    'pkey'    => true,
	    'notnull' => true,
	    'grid'    => true,
	    'display' => true,
            'especial' => 'hidden',
            //'session'  => 'ocorrencia/grupo',
	    'fkey' => array(
	        'model' => 'ocorrencia/grupo',
	        'cardinalidade' => '1n',
	        'keys' => array('cod_grupo', 'nome'),
                'onupdate' => 'cascade',
                'ondelete' => 'cascade',
	    ),
        ),
        'cod_usuario' => array(
	    'name'     => 'Participantes do Grupo',
	    'type'     => 'int',
	    'size'     => '11',
	    'pkey'    => true,
	    'notnull' => true,
	    'grid'    => true,
	    'display' => true,
	    'fkey' => array(
	        'model' => 'usuario/login',
	        'cardinalidade' => '1n',
	        'keys' => array('cod_usuario', 'user_name', 'user_cargo'),
                'onupdate' => 'cascade',
                'ondelete' => 'cascade',
	    ),
        ),
        
        'tipo_participacao' => array(
            'name' => 'Tipo de Participação',
            'type'    => 'enum',
            'private' => true,
            'default' => 'p',
            'options' => array(
                'c'   => 'Chefe',
                'p'   => 'Participante',
            )
        )
        
    );
    
    public function inserir($dados) {
        $cod_grupo = $dados['cod_grupo'];
        $gr = $this->selecionar(array(), "cod_usuario = '".$dados['cod_usuario']."' AND cod_grupo = '$cod_grupo'");
        if(!empty ($gr)) {
            $this->setAlertMessage('Email já cadastrado neste grupo!');
            return true;
        }
        if(!parent::inserir($dados)) return false;
        if(isset($dados['tipo_participacao']) && $dados['tipo_participacao'] == "c") return true;
        $this->LoadResource('html', 'html');
        $this->LoadModel('contato/alertas', 'aobj');
        $this->LoadModel('usuario/login', 'uobj');
        $this->LoadModel('ocorrencia/grupo', 'gobj');
        
        $grupo = $this->gobj->getSimpleItem($cod_grupo, array('nome'));
        $user  = $this->uobj->getItem($dados['cod_usuario']);        $username  = $this->uobj->getUserNick($user);  $usermail = $user['email'];
        $autor = $this->uobj->getItem($this->uobj->getCodUsuario()); $autorname = $this->uobj->getUserNick($autor);
        
        $this->setSuccessMessage("Usuário $username adicionado corretamente ao grupo");
        $assunto = "Você foi adicionado ao grupo ".$grupo['nome'];
        $link    = $this->html->getLink('ocorrencia/grupo/show/'.$cod_grupo);
        $texto   = "O usuário $autorname te adicionou ao grupo de trabalho ". $grupo['nome']. "<br/>".
                   "Você pode acessar o grupo <a href='$link'>clicando aqui</a>";

        if(!$this->aobj->alertar($assunto, $texto, $usermail, $autor))
            $this->setAlertMessage($this->aobj->getErrorMessage());
        return true;
    }

}
?>